shiboken2/clang: Record scope resolution of arguments/function return
Add a flag indicating whether a type was specified with a leading "::"
(scope resolution). Such parameters previously caused the function to
rejected due to the "::TypeName" not being found. The type resolution
added for clang 16 strips these qualifiers though, so, the information
needs to be stored.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: I27d27c94ec43bcc4cb3b79e6e9ce6706c749a1e9 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit 075d8ad4660f05e6d2583ff1c05e9987ad624bfe)
Gbp-Pq: Name shiboken2-clang-Record-scope-resolution-of-arguments-func.patch
shiboken2/clang: Fix and simplify resolveType() helper
The function had a bug which only manifested with clang 16:
"type" should have been assigned the type of the cursor
obtained from clang_getTypeDeclaration(). With this, the complicated
lookup code in getBaseClass() can be removed.
Task-number: PYSIDE-2288 Pick-to: 6.5
Change-Id: I861e30451b3f4af2ec0c2e4ffa4179a429854533 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Gbp-Pq: Name shiboken2-clang-Fix-and-simplify-resolveType-helper.patch
shiboken2/clang: Fix clashes between type name and enumeration values
Remove all constant and enum value type entries found in the type lookup
unless it is looking for template arguments; where it may be a
non-type template argument.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: If0609ce0d0223f551ed6dee1d1e0ea3ef49d6917 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit e22f717153a5e9855531f45c0bf82ff2461a3f7e)
Gbp-Pq: Name shiboken2-clang-Fix-clashes-between-type-name-and-enumera.patch
Christian Tismer [Tue, 14 Feb 2023 13:46:22 +0000 (14:46 +0100)]
Python 3.12: Fix the structure of class property
There is a PySide bug in Python 3.10 already: The structure for
classproperty derives from the property structure. This was extended
in Python 3.10, already, but the type generation check was made more
exhaustive in Python 3.12 and recognized that.
This change is only for making the compiler/C API happy.
In order to use the extension field, it is necessary to do a runtime
check because of the Limited API.
Task-number: PYSIDE-2230
Change-Id: I88dcaa11589ff41852f08fa2defa5200a0dd4eb6 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit edfd9a5ad174a48f8d7da511dc6a1c69e931a418)
Gbp-Pq: Name Python-3.12-Fix-the-structure-of-class-property.patch
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
PyEnum: make forgiving duplicates work with Python 3.11
There was a silent change in PyEnums that turns Enum attributes
into properties. This does not harm the Python interface but
needed some change in the duplication emulation.
Furthermore, new internal enums are created with an underscore name.
The meta class was changed from EnumMeta to EnumType.
[ChangeLog][shiboken6] The new Python Enums are now compatible with Python 3.11
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
Shiboken: Fix the oldest shiboken bug ever which shows up on Python 3.11
b7df2f1c0 "Fix signal initializer.", 18. May 2010 at 00:55
There was a `PySequence_Check` in the evaluation of some signature
function parameter processing, which should have been `PyTuple_Check`.
Since the new PyEnums are also sequences, the new optimization in
Python 3.11 changed the parameter handling in a correct way and
replaced the argument tuple by a direct single argument of an enum
type. And that is also a sequence ...
There are probably still dormant issues like this in the codebase
which gives reason to submit a task that checks all Python interface
functions for correctness.
Dmitry Shachnev [Sun, 14 Nov 2021 18:08:50 +0000 (21:08 +0300)]
Find the build directory matching the current interpreter
This is needed to allow us to run tests with all supported Python versions.
Without this patch, the latest build directory will be always picked, no
matter what the current interpreter is.
Dmitry Shachnev [Sat, 3 Feb 2024 21:29:00 +0000 (00:29 +0300)]
Modify sendCommand signatures to use 0 as default value
The original default value was QNodeCommand::CommandId(), and shiboken
copies it verbatim from the header file, however it does not work because
we do not generate "using namespace Qt3DCore;".
shiboken2/clang: Record scope resolution of arguments/function return
Add a flag indicating whether a type was specified with a leading "::"
(scope resolution). Such parameters previously caused the function to
rejected due to the "::TypeName" not being found. The type resolution
added for clang 16 strips these qualifiers though, so, the information
needs to be stored.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: I27d27c94ec43bcc4cb3b79e6e9ce6706c749a1e9 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit 075d8ad4660f05e6d2583ff1c05e9987ad624bfe)
Gbp-Pq: Name shiboken2-clang-Record-scope-resolution-of-arguments-func.patch
shiboken2/clang: Fix and simplify resolveType() helper
The function had a bug which only manifested with clang 16:
"type" should have been assigned the type of the cursor
obtained from clang_getTypeDeclaration(). With this, the complicated
lookup code in getBaseClass() can be removed.
Task-number: PYSIDE-2288 Pick-to: 6.5
Change-Id: I861e30451b3f4af2ec0c2e4ffa4179a429854533 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Gbp-Pq: Name shiboken2-clang-Fix-and-simplify-resolveType-helper.patch
shiboken2/clang: Fix clashes between type name and enumeration values
Remove all constant and enum value type entries found in the type lookup
unless it is looking for template arguments; where it may be a
non-type template argument.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: If0609ce0d0223f551ed6dee1d1e0ea3ef49d6917 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit e22f717153a5e9855531f45c0bf82ff2461a3f7e)
Gbp-Pq: Name shiboken2-clang-Fix-clashes-between-type-name-and-enumera.patch
Christian Tismer [Tue, 14 Feb 2023 13:46:22 +0000 (14:46 +0100)]
Python 3.12: Fix the structure of class property
There is a PySide bug in Python 3.10 already: The structure for
classproperty derives from the property structure. This was extended
in Python 3.10, already, but the type generation check was made more
exhaustive in Python 3.12 and recognized that.
This change is only for making the compiler/C API happy.
In order to use the extension field, it is necessary to do a runtime
check because of the Limited API.
Task-number: PYSIDE-2230
Change-Id: I88dcaa11589ff41852f08fa2defa5200a0dd4eb6 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit edfd9a5ad174a48f8d7da511dc6a1c69e931a418)
Gbp-Pq: Name Python-3.12-Fix-the-structure-of-class-property.patch
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
PyEnum: make forgiving duplicates work with Python 3.11
There was a silent change in PyEnums that turns Enum attributes
into properties. This does not harm the Python interface but
needed some change in the duplication emulation.
Furthermore, new internal enums are created with an underscore name.
The meta class was changed from EnumMeta to EnumType.
[ChangeLog][shiboken6] The new Python Enums are now compatible with Python 3.11
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
Shiboken: Fix the oldest shiboken bug ever which shows up on Python 3.11
b7df2f1c0 "Fix signal initializer.", 18. May 2010 at 00:55
There was a `PySequence_Check` in the evaluation of some signature
function parameter processing, which should have been `PyTuple_Check`.
Since the new PyEnums are also sequences, the new optimization in
Python 3.11 changed the parameter handling in a correct way and
replaced the argument tuple by a direct single argument of an enum
type. And that is also a sequence ...
There are probably still dormant issues like this in the codebase
which gives reason to submit a task that checks all Python interface
functions for correctness.
Dmitry Shachnev [Sun, 14 Nov 2021 18:08:50 +0000 (21:08 +0300)]
Find the build directory matching the current interpreter
This is needed to allow us to run tests with all supported Python versions.
Without this patch, the latest build directory will be always picked, no
matter what the current interpreter is.
Dmitry Shachnev [Sat, 3 Feb 2024 21:29:00 +0000 (00:29 +0300)]
Modify sendCommand signatures to use 0 as default value
The original default value was QNodeCommand::CommandId(), and shiboken
copies it verbatim from the header file, however it does not work because
we do not generate "using namespace Qt3DCore;".
shiboken2/clang: Record scope resolution of arguments/function return
Add a flag indicating whether a type was specified with a leading "::"
(scope resolution). Such parameters previously caused the function to
rejected due to the "::TypeName" not being found. The type resolution
added for clang 16 strips these qualifiers though, so, the information
needs to be stored.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: I27d27c94ec43bcc4cb3b79e6e9ce6706c749a1e9 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit 075d8ad4660f05e6d2583ff1c05e9987ad624bfe)
Gbp-Pq: Name shiboken2-clang-Record-scope-resolution-of-arguments-func.patch
shiboken2/clang: Fix and simplify resolveType() helper
The function had a bug which only manifested with clang 16:
"type" should have been assigned the type of the cursor
obtained from clang_getTypeDeclaration(). With this, the complicated
lookup code in getBaseClass() can be removed.
Task-number: PYSIDE-2288 Pick-to: 6.5
Change-Id: I861e30451b3f4af2ec0c2e4ffa4179a429854533 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Gbp-Pq: Name shiboken2-clang-Fix-and-simplify-resolveType-helper.patch
shiboken2/clang: Fix clashes between type name and enumeration values
Remove all constant and enum value type entries found in the type lookup
unless it is looking for template arguments; where it may be a
non-type template argument.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: If0609ce0d0223f551ed6dee1d1e0ea3ef49d6917 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit e22f717153a5e9855531f45c0bf82ff2461a3f7e)
Gbp-Pq: Name shiboken2-clang-Fix-clashes-between-type-name-and-enumera.patch
Christian Tismer [Tue, 14 Feb 2023 13:46:22 +0000 (14:46 +0100)]
Python 3.12: Fix the structure of class property
There is a PySide bug in Python 3.10 already: The structure for
classproperty derives from the property structure. This was extended
in Python 3.10, already, but the type generation check was made more
exhaustive in Python 3.12 and recognized that.
This change is only for making the compiler/C API happy.
In order to use the extension field, it is necessary to do a runtime
check because of the Limited API.
Task-number: PYSIDE-2230
Change-Id: I88dcaa11589ff41852f08fa2defa5200a0dd4eb6 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit edfd9a5ad174a48f8d7da511dc6a1c69e931a418)
Gbp-Pq: Name Python-3.12-Fix-the-structure-of-class-property.patch
Fix tests sample_privatector sample_privatedtor failing with Python 3.11.5
Remove special characters from the format string as they cause:
ValueError PyUnicode_FromFormatV() expects an ASCII-encoded format string, got a non-ASCII byte: 0xc2
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
PyEnum: make forgiving duplicates work with Python 3.11
There was a silent change in PyEnums that turns Enum attributes
into properties. This does not harm the Python interface but
needed some change in the duplication emulation.
Furthermore, new internal enums are created with an underscore name.
The meta class was changed from EnumMeta to EnumType.
[ChangeLog][shiboken6] The new Python Enums are now compatible with Python 3.11
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
Shiboken: Fix the oldest shiboken bug ever which shows up on Python 3.11
b7df2f1c0 "Fix signal initializer.", 18. May 2010 at 00:55
There was a `PySequence_Check` in the evaluation of some signature
function parameter processing, which should have been `PyTuple_Check`.
Since the new PyEnums are also sequences, the new optimization in
Python 3.11 changed the parameter handling in a correct way and
replaced the argument tuple by a direct single argument of an enum
type. And that is also a sequence ...
There are probably still dormant issues like this in the codebase
which gives reason to submit a task that checks all Python interface
functions for correctness.
Dmitry Shachnev [Sun, 14 Nov 2021 18:08:50 +0000 (21:08 +0300)]
Find the build directory matching the current interpreter
This is needed to allow us to run tests with all supported Python versions.
Without this patch, the latest build directory will be always picked, no
matter what the current interpreter is.
Dmitry Shachnev [Tue, 25 Jun 2024 20:47:03 +0000 (23:47 +0300)]
pyside2 (5.15.14-1) unstable; urgency=medium
* Team upload.
* New upstream release.
* Drop patches, included in the new release:
- shiboken2-Fix-build-with-clang-16.patch
- shiboken2-Fail-template-test-instead-of-crashing.patch
* Refresh and rebase other patches.
Dmitry Shachnev [Sat, 3 Feb 2024 21:29:00 +0000 (00:29 +0300)]
Modify sendCommand signatures to use 0 as default value
The original default value was QNodeCommand::CommandId(), and shiboken
copies it verbatim from the header file, however it does not work because
we do not generate "using namespace Qt3DCore;".
shiboken2/clang: Record scope resolution of arguments/function return
Add a flag indicating whether a type was specified with a leading "::"
(scope resolution). Such parameters previously caused the function to
rejected due to the "::TypeName" not being found. The type resolution
added for clang 16 strips these qualifiers though, so, the information
needs to be stored.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: I27d27c94ec43bcc4cb3b79e6e9ce6706c749a1e9 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit 075d8ad4660f05e6d2583ff1c05e9987ad624bfe)
Gbp-Pq: Name shiboken2-clang-Record-scope-resolution-of-arguments-func.patch
shiboken2/clang: Fix and simplify resolveType() helper
The function had a bug which only manifested with clang 16:
"type" should have been assigned the type of the cursor
obtained from clang_getTypeDeclaration(). With this, the complicated
lookup code in getBaseClass() can be removed.
Task-number: PYSIDE-2288 Pick-to: 6.5
Change-Id: I861e30451b3f4af2ec0c2e4ffa4179a429854533 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Gbp-Pq: Name shiboken2-clang-Fix-and-simplify-resolveType-helper.patch
shiboken2/clang: Fix clashes between type name and enumeration values
Remove all constant and enum value type entries found in the type lookup
unless it is looking for template arguments; where it may be a
non-type template argument.
Task-number: PYSIDE-2288 Pick-to: 6.5 5.15
Change-Id: If0609ce0d0223f551ed6dee1d1e0ea3ef49d6917 Reviewed-by: Christian Tismer <tismer@stackless.com>
(cherry picked from commit e22f717153a5e9855531f45c0bf82ff2461a3f7e)
Gbp-Pq: Name shiboken2-clang-Fix-clashes-between-type-name-and-enumera.patch
Christian Tismer [Tue, 14 Feb 2023 13:46:22 +0000 (14:46 +0100)]
Python 3.12: Fix the structure of class property
There is a PySide bug in Python 3.10 already: The structure for
classproperty derives from the property structure. This was extended
in Python 3.10, already, but the type generation check was made more
exhaustive in Python 3.12 and recognized that.
This change is only for making the compiler/C API happy.
In order to use the extension field, it is necessary to do a runtime
check because of the Limited API.
Task-number: PYSIDE-2230
Change-Id: I88dcaa11589ff41852f08fa2defa5200a0dd4eb6 Reviewed-by: Adrian Herrmann <adrian.herrmann@qt.io> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io>
(cherry picked from commit edfd9a5ad174a48f8d7da511dc6a1c69e931a418)
Gbp-Pq: Name Python-3.12-Fix-the-structure-of-class-property.patch
Fix tests sample_privatector sample_privatedtor failing with Python 3.11.5
Remove special characters from the format string as they cause:
ValueError PyUnicode_FromFormatV() expects an ASCII-encoded format string, got a non-ASCII byte: 0xc2
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
PyEnum: make forgiving duplicates work with Python 3.11
There was a silent change in PyEnums that turns Enum attributes
into properties. This does not harm the Python interface but
needed some change in the duplication emulation.
Furthermore, new internal enums are created with an underscore name.
The meta class was changed from EnumMeta to EnumType.
[ChangeLog][shiboken6] The new Python Enums are now compatible with Python 3.11
Christian Tismer [Tue, 21 Jun 2022 08:22:04 +0000 (10:22 +0200)]
Shiboken: Fix the oldest shiboken bug ever which shows up on Python 3.11
b7df2f1c0 "Fix signal initializer.", 18. May 2010 at 00:55
There was a `PySequence_Check` in the evaluation of some signature
function parameter processing, which should have been `PyTuple_Check`.
Since the new PyEnums are also sequences, the new optimization in
Python 3.11 changed the parameter handling in a correct way and
replaced the argument tuple by a direct single argument of an enum
type. And that is also a sequence ...
There are probably still dormant issues like this in the codebase
which gives reason to submit a task that checks all Python interface
functions for correctness.
Dmitry Shachnev [Sun, 14 Nov 2021 18:08:50 +0000 (21:08 +0300)]
Find the build directory matching the current interpreter
This is needed to allow us to run tests with all supported Python versions.
Without this patch, the latest build directory will be always picked, no
matter what the current interpreter is.
* Team upload.
* Acknowledge NMU, thanks Steve Langasek!
* New upstream release.
* Rebase patches for the new release.
* Blacklist smart_pointer test (closes: #1068078).
* Bump Standards-Version to 4.7.0, no changes needed.